<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // 程序的执行有三大结构(任何程序都是有这三个结构组成)
        // 顺序结构--代码自上而下执行的
        // 选择结构-分支结构--有条件的执行一段代码
        // 循环结构- 有条件的重复执行一段代码--直到条件不满足
        //  死循环没有意义

        // 循环--重复--最能发挥计算机性能的 语句


        /*
            语法
            1-
                当条件满足的时候，就会执行后面的循环体，
                    循环体中代码执行完毕以后，会跑到while里面继续判断条件是否满足，依次类推

                    如果条件不满足 ，那么这个循环就结束了，继续执行后面的代码
                while(条件){
                    代码块--循环体
                }
        */

        // 不要出现死循环,因为会把页面卡死
        //    死循环
        // while (true) {
        //     alert('你好');
        // }

        // while (true) {
        //     console.log('你好');
        // }


        // 有意义的循环
        // 输出 0-100之间的数字
        /* 
            控制循环执行
                1- 循环变量（因子） 初始值 从0开始
                2- 循环条件 i<100 
                3- 循环变量 在循环中 变化 ，自增 i++

              特点：
                1-控制循环执行的次数
                 i从0开始，小于几 循环就执行几次  
                2-控制循环中i值的范围 (连续的整数)
                 i从0开始，小于n 循环中 i 值就是 0 到 n-1  
                    i从0开始，小于1- 循环中 i 值就是 0 到 9  

        
        */
        /*
           
            i=0 ,循环执行第一次 i<100 成立-》 log(0) ;i++ i=1
            i=1 ,循环执行第二次 i<100 成立-》 log(1) ;i++ i=2
            i=2 ,循环执行第三次 i<100 成立-》 log(2) ;i++ i=3
            i=3 ,循环执行第四次 i<100 成立-》 log(3) ;i++ i=4

            i=99 ,循环执行第100次 i<100 成立-》 log(99) ;i++ i=100

            i=100 i<100 不成立，循环结束，

        */
        var i = 0;
        while (i < 1000) {
            console.log(i + '---');
            // console.log(111);
            i++;
        }
        //打印出1000到2000之间的所有数字（包含1000 和2000）



    </script>

</body>

</html>